package com.dlx.order.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.dlx.model.mem.MemLevel;
import com.dlx.model.order.ConsumeOrderInfo;
import com.dlx.vo.order.ConsumeOrderInfoQueryVo;
import com.dlx.vo.order.ConsumeOrderReportQueryVo;
import com.dlx.vo.order.ConsumeVo;

import java.util.Map;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author nglon
 * @since 2021-11-16
 */
public interface ConsumeOrderInfoService extends IService<ConsumeOrderInfo> {

    Boolean consume(ConsumeVo consumeVo);

    Page<ConsumeOrderInfo> selectConsumeOrderInfoPage(Long current, Long limit, ConsumeOrderInfoQueryVo consumeOrderInfoQueryVo);

    ConsumeOrderInfo show(Long id);

    Map<String, Object> getMonthlyReport(ConsumeOrderReportQueryVo vo);

    Map<String, Object> getQuarterlyReport(ConsumeOrderReportQueryVo vo);

    Map<String, Object> getAnnualReport();

    MemLevel getDiscount();

}
